package com.note.app.dto;

import io.swagger.v3.oas.annotations.media.Schema;
import jakarta.validation.constraints.NotBlank;
import jakarta.validation.constraints.Size;
import lombok.Data;

/**
 * 创建集合请求DTO
 */
@Data
@Schema(description = "创建集合请求")
public class CollectionCreateDTO {
    
    @Schema(description = "父级集合ID，为空则创建在根目录", example = "0")
    private Long parentId;
    
    @NotBlank(message = "集合名称不能为空")
    @Size(min = 1, max = 255, message = "集合名称长度须在1-255之间")
    @Schema(description = "集合名称", required = true, example = "学习笔记")
    private String name;
    
    @Schema(description = "集合描述", example = "这是一个学习笔记的集合")
    private String description;
    
    @Schema(description = "图片地址", example = "https://example.com/image.jpg")
    private String icon;
    
    @Schema(description = "表情符号", example = "📁")
    private String emoji;
} 